There are currently a variety of methods for monitoring and controlling the motion and status of machines in manufacturing, production, and processing environments, such as a factory. For example, processor-based controls, such as a computer numerical control (CNC), are used to control the motion of machines such as machine tools and robots that are used in a variety of manufacturing environments. A programmable logic control (PLC) may also be used to control the motion of a machine in a manufacturing, production or processing environment. Older equipment may be controlled by relays and relay logic.
All of these types of controls focus primarily on machine operation and very little on the information that the machine can provide to others. Usually, a machine control is designed to communicate directly to an operator of the machine equipment. It provides the operator with the information necessary to run the machine and make changes to the machine as needed. If one wishes to collect and analyze machine productivity, maintenance, status, quality, signal, or alarm information in real-time or over an interval of time, this information is either not available or needs to be derived from raw signals. The usual way to collect such information is manually by the operator. This implies a number of disadvantages. Typically, an operator must be present at all times to monitor the machine and the information collected is either recorded manually on paper or manually entered into a computer on the factory floor. Thus, it is possible that only a fraction of the useful information will be captured. Further, due to the high-level of human interaction required, this method is also prone to inaccuracies. In addition, the necessity of human interaction introduces delays that make this approach unsuitable for real time-decision making.
Other solutions for automated data collection and reporting involve a more complicated integration effort and rely on the machine data being stored in a database on a central server on a network. However, this signifies that machine data must constantly be sent to the central server for processing. Thus, such solutions may require additional network resources and may increase network congestion. Further, should the central server or network fail, valuable machine data will be lost and monitoring and some level of control will be jeopardized. In addition, the network, central server, and machine connections may all have to be configured separately through a variety of interfaces which may increase configuration time and complexity both during initial installation and recovery after failure of a system component.
Accordingly, what is required is a system and method that automatically monitors machines and captures data which may then be processed and reported in a manner configurable by the user. The system and method should also provide for generation of output signals, in response to the results of processing the machine data and also configurable by the user, which may be used for pausing or stopping a machine or causing lights or buzzers to be activated. The system and method should allow for viewing of reports based on processed machine data. The system and method should further allow for simple configuration of all aspects of the system, also via a convenient and familiar interface mechanism. Users should be able to view and request reports, as well as effect system configuration, remotely from a client computing device on a network. To minimize reliability issues and network traffic, however, such a system should provide integrated data processing and storage management and storage of configuration information, output signal generation, report generation in a variety of formats, as well as the mechanism for generating the user interfaces, within one machine monitoring device. The machine monitoring device should also contain connectors that allow desired machines to be easily connected to the machine monitoring device and to connect the machine monitoring device to the network. Thus, the machine monitoring device should constitute a self-contained unit that acts as a server to provide all desired services to users on the client computing devices, which should act as clients of the machine monitoring device. The present invention addresses the various requirements identified above.